import React, { Component,PureComponent } from 'react'
// Component 类，不管是是否有数据更新，只要有数据变化，它和它的子组件都重新渲染
// PureComponent 纯组件 内部实现了shouldComponentUpdate

export default class Users extends PureComponent {

  state = {
    nickname: '就业榜'
  }

  // 下一次的props和state数据  新数据
  /* shouldComponentUpdate(nextProps, nextState) {
    // this.props.username 旧数据
    if (nextProps.username === this.props.username && nextState.nickname === this.state.nickname) {
      // 当前的数据没有发生改变
      return false
    }
    return true
  } */


  componentDidMount() {
    setTimeout(() => {
      console.log('就业榜');
      this.setState({
        nickname: '就业榜'
      })
    }, 3000);
  }


  render() {
    console.log('child-User----render');
    return (
      <div>
        我是一个子组件 --- {this.props.username}

        <hr />
        <h3>{this.state.nickname}</h3>
      </div>
    )
  }
}
